This invention relates to a system and method for creation and automatic deployment of personalized, dynamic and interactive voice services relating to subscriber books, including information derived from on-line analytical processing (OLAP) systems. More specifically, the invention relates to a system and method that enable personalized delivery of book-related information in real-time, via natural language voice communication with a voice-enabled terminal device.
Various systems exist which allow users to receive information about books. Historically, users could physically go to a bookstore to browse through books and to receive information about books. A user can also initiate a call to the book store, and request and receive information about a book from the bookstore employees. Physical bookstores, however, may suffer from the drawback of requiring a user to physically go to the bookstore to purchase a book or initiate the call to the bookstore. Additionally, employees at bookstores may not have the time to provide a user with all the information desired during a telephone call.
Another system for receiving information about books may include a user accessing a website. After accessing the website, the user may be presented with various options about books. A user may be presented with information about books, options to see other information, and options to purchase a book. This system, however, may suffer from a drawback that a user must initiate access to the website to receive the information.
These and other drawbacks exist.
An object of the present invention is to overcome these and other drawbacks in existing systems and methods.
Another object of the invention is to provide systems and methods for providing real-time, interactive telephone communication of identified books that would interest a user, and presenting user inputs to purchase an identified book.
Another object of the invention is to provide systems and methods for receiving information from a user, including personal information, book information, financial information, and parameter information.
Another object of the invention is to provide systems and methods for compiling a user profile based on user information, wherein identifying books is based on user information.
Another object of the invention is to provide systems and methods for updating user information based on new user information and instructions received from a user in response to communicated content.
These and other objects of the invention are accomplished according to various embodiments of the invention. Books may be identified, and information about the books and user inputs may be presented to a user. User information may include personal user information, book information, financial information, parameter information, and other information. User information permits books of interest to be identified and presented to a user, and allow interaction with the information.
According to an embodiment of the invention, a various user information is received, including personal information, parameter information, book information, financial information, and other information. Books of potential interest to a user are identified based on user information. A user is presented with content and cued for user inputs about the identified books, including user options and user prompts. Options and prompts for purchasing and receiving information about books are communicated to a user in a real-time, interactive format, thereby allowing a user is to receive information about and purchase books.
Another embodiment of the invention relates to a system and method for creation and automatic deployment of personalized, dynamic and interactive voice services, including information derived from on-line analytical processing (OLAP) systems and other data repositories. The system and method enables the ability to capture user selections to facilitate closed-loop transaction processing and processing of other requests. One aspect of the invention relates to an interactive voice broadcasting system and method that enables analytical reporting and advanced transactional services via the telephone or other voice-enabled terminal device. One advantage of the invention is that a voice service may leverage the power of OLAP or other data repository systems and provide critical information to the user, in a timely fashion, by phone. Another advantage of this method and system is that it provides a user with the opportunity to immediately act upon information received during a interactive voice broadcast.
A voice service is created and can have many users subscribed to the voice service. Each user can specify personal preferences for the content and presentation of the contents for a voice service. The specification of the elements of a voice service may be done using a set of interfaces (such as GUIs) that take the form of a voice service wizard.
A voice service includes one or more Dialog elements. Dialog elements may include one or more of Speech elements, Input elements and Error elements. An Input element may include a Prompt element and/or an Option element. An Input element enables the system to request input from the user, capture the input and direct the call flow based on the user""s input. An Option element associates a key (e.g., on a telephone touch pad dial) with a destination Dialog that is executed when that number is pressed by a user during an interactive voice broadcast. A Prompt requests a user to enter numeric or other information. An Input element may enable a user to request, during an interactive voice broadcast, a transaction, a service or other requests. The term transactions, services and requests are to be interpreted broadly.
According to one embodiment, the user""s responses to Input elements are stored during an interactive voice broadcast and, during or after the voice broadcast, the stored information is processed by the system or is passed to another system or application for processing. The transaction (or other request) processing can be accomplished either in real-time, during the voice broadcast, or after the interactive voice broadcast is completed. The results or confirmation of a transaction or other request can be provided to the user during the call or subsequently.
Once a voice service is created, the system monitors predetermined conditions to determine when the voice service should be executed. Each voice service is executed when one or more predetermined conditions are met as specified during creation of the voice service. For example, a voice service may be executed according to a predetermined schedule (time-based) or based on a triggering event (e.g. one or more conditions are met based on the output of an OLAP or other report).
When the predetermined condition is satisfied, the voice service is executed. Executing a voice service, includes the steps of generating the content specified by the voice service and the user preferences. Some users may have identical personalization options and, thus, a single call structure may be generated for a group of users with identical personalization options. The content of the voice service includes the information that is to delivered to users of that voice service, and the Input to be requested from the user, among other things. The content may include, for example, static text messages, dynamic content (e.g. text based on information output from an OLAP report, other database or other sources) or blended text (e.g. static text combined with dynamic content).
This and other content are formatted in an Active Voice Page (AVP). An AVP contains the call structure and data. The AVP contains data at various hierarchical levels that are defined by the Dialog elements defined for each voice service. The active voice pages are used to help govern the interaction between the call server and the user during an IVB. According to one embodiment, the content is formatted, into an AVP e.g., using XSL stylesheets so the AVP is in an XML-based language. According to one embodiment, the XML-based language used is a novel language referred to as TML (discussed below). The AVP is sent to a call server along with style properties for each user. The style properties of a user help determine the behavior of the call server during an interactive voice broadcast. A unique AVP is generated for each user scheduled to receive a voice service.
When a user is called by the call server, information is passed through a T-T-S engine and delivered to the user through a voice-enabled terminal device. Preferably, the structure of each call is dynamic, driven by current data values and is personalized based on a user profile established during subscription to a voice service. During a typical interactive voice broadcast, a synthesized, natural sounding voice greets the recipient by name, identifies itself, provides information relevant to the user and enables a user to provide input back to the system.
An IVB is a voice-enabled interaction with a user having a dynamic structure controlled by the AVP for the particular user. The IVB may be delivered using real-time, on-the-fly speech generation. During an IVB, information is exchanged between the call server and a user according to the AVP. The system executes dialogs by reading messages to the user and, eliciting input from the user. For example, the user may press buttons on a telephone touch pad dial to select an option or to provide numeric or alphanumeric input. Each response provided by a user may transfer control of the IVB to a different part of the AVP.
During or after the IVB, the user""s responses may be processed by the system or other applications. The AVP may contain pointers to other applications and embedded statements such that when a user exercises an option, the system performs a requested operation and returns the results to the user during the IVB. For example, by exercising an option, a user may request that a real-time database query be performed. When the user selects such an option, control is shifted to a portion of the AVP that contains an embedded SQL statement that is made against a database.
When a user has worked through selected dialogs of the AVP, the IVB is terminated. That is, a user likely will not work-through all of the available dialogs during an IVB. Rather, the user""s inputs and option selections determine which the available dialogs are encountered during any given IVB.
Other objects and advantages exist for the present invention.